/** *************稿件列表信息START************************** */
var rs = new Ext.data.JsonReader( {
	root : 'manuscripts',
	totalProperty : 'totalCount'
}, [ {
	name : 'urgence', // 紧急程度
	mapping : 'urgence',
	hidden : 'true'
}, {
	name : 'securityClassification',// 密级，取值见securityClassification常量
	mapping : 'securityClassification',
	hidden : 'true'
}, {
	name : 'manuscriptId',
	mapping : 'manuscriptId',
	hidden : 'true'
}, {
	name : 'title',// 稿件标题
	mapping : 'title'
}, {
	name : 'contributeCompanyName',// 稿件公司名字
	mapping : 'contributeCompany.contributeCompanyName'
}, {
	name : 'manuscriptCategoryName',// 稿件分类名字
	mapping : 'manuscriptCategory.manuscriptCategoryName'
}, {
	name : 'plannedConsummationTime',// 计划完成时间
	mapping : 'plannedConsummationTime'
} ]);

var ds = new Ext.data.Store( {
	baseParams:{manuscriptStatus:9},
	proxy : new Ext.data.HttpProxy( {
		url : "receiver_manuscriptInfo_list.action",
		method : 'POST'
	}),
	reader : rs
});

var cm_user = new Ext.grid.ColumnModel(
		[
				new Ext.grid.RowNumberer(),
				{
					header : "稿件标题",
					width : 100,
					dataIndex : 'title',
					sortable : true,
					renderer : function(value, metadata, record) {
						return "<a href = 'javascript:void(0)' onclick=javascript:showdrawView('"
								+ record.data.manuscriptId
								+ "')> "
								+ value
								+ " </a>";
					}
				},
				{
					header : "来稿单位",
					width : 120,
					dataIndex : 'contributeCompanyName',
					sortable : true
				},
				{
					header : "稿件分类",
					width : 120,
					dataIndex : 'manuscriptCategoryName',
					sortable : true
				},
				{
					header : "计划完成时间",
					width : 120,
					dataIndex : 'plannedConsummationTime',
					sortable : true,
					renderer : function(value, metadata, record) {
					 	return new Date(value).format('Y-m-d');
					}
				},
				{

					header : "标识",
					width : 120,
					dataIndex : 'manuscriptId',
					renderer : function(value, metadata, record) {
						return tomark(value, metadata, record);
					}
				},
				{
					header : "操作",
					width : 120,
					dataIndex : 'operation',
					renderer : function(value, metadata, record) {

						return "<a href = 'javascript:void(0)' id = 'handmanuscript' name='open' onclick=javascript:showdrawView('"
								+ record.data.manuscriptId + "')>发排文档 </a>";
					}
				} ]);

// 时间操作START
function totime(value, metadata, record) {
	return new Date(value).format('Y-m-d H:i');
}

// 时间操作END
// 来稿START

function tourgence(value) {

	switch (value) {
	case 0:
		return "普通";
		break;
	case 5:
		return "紧急";
		break;
	case 10:
		return "特急";
		break;
	}
}

function tosecurityClassification(value) {

	switch (value) {
	case 1:
		return "普通";
		break;
	case 2:
		return "秘密";
		break;
	case 3:
		return "机密";
		break;
	case 5:
		return "绝密";
		break;
	}
}

function tolanguage(value) {

	switch (value) {
	case 1:
		return "汉语";
		break;
	case 2:
		return "藏语";
		break;
	}

}

function totargetLanguage(value) {

	switch (value) {
	case 1:
		return "汉语";
		break;
	case 2:
		return "藏语";
		break;
	}
}

function totexttype(value) {

	switch (value) {
	case 0:
		return "纸质稿件";
		break;
	case 0x0100:
		return "电子稿件";
		break;
	}

}

function totype(value) {
	if(value=="DW"){
		return "党委";
	}else if(value=="RD"){
		return "人大";
	}else if(value=="ZF"){
		return "政府";
	}else if(value=="ZX"){
		return "政协";
	}else if(value=="QT"){
		return "其他";
	}else{
		return value;
	}
}

function toisAll(value){
    var fag = 0;
    for (var i = 0; i < value.length; i++) {
        if (value[i].status == 5) {
            fag++;
        }
    };
    if (fag == value.length) {
        return true;
    }
    else {
        return false;
    }
}

function toisElectronic(value){
    switch (value) {
        case 0:
            return false;
            break;
        case 0x0100:
            return true;
            break;
    }
    
}
// 来稿END
// 表单START
var urgence;
var securityClassification;
var language;
var targetLanguage;
var contributeTime;
var plannedConsummationTime;
var type;
var texttype;
var isAll = true;
var isElectronic = true;
function formchange(respText) {
	isElectronic = toisElectronic(respText.manuscript.type);
	urgence = tourgence(respText.manuscript.urgence);
	securityClassification = tosecurityClassification(respText.manuscript.securityClassification);
	language = tolanguage(respText.manuscript.language);
	targetLanguage = totargetLanguage(respText.manuscript.targetLanguage);
	contributeTime = totime(respText.manuscript.contributeTime, "", "");
	plannedConsummationTime = totime(
			respText.manuscript.plannedConsummationTime, "", "");
	texttype = totexttype(respText.manuscript.type);
	type = totype(respText.manuscript.contributeCompany.type);
}

// 表单END
// 标志START
var re;
function tomark(value, metadata, record) {
    var title = '&nbsp;密级&nbsp;&nbsp;&nbsp;&nbsp;紧急程度&nbsp;';
    var tip;
    var s1 = "&nbsp;普通&nbsp;&nbsp;&nbsp;&nbsp;";
    var s2 = "&nbsp;秘密&nbsp;&nbsp;&nbsp;&nbsp;";
    var s3 = "&nbsp;机密&nbsp;&nbsp;&nbsp;&nbsp;";
    var s5 = "&nbsp;绝密&nbsp;&nbsp;&nbsp;&nbsp;";
    var u0 = "&nbsp;&nbsp;&nbsp;普通&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    var u5 = "&nbsp;&nbsp;&nbsp;紧急&nbsp;&nbsp;&nbsp;&nbsp;";
    var u10 = "&nbsp;&nbsp;&nbsp;特急";
    var c0 = "&nbsp<img src='images/clock_blue.gif'  />&nbsp";// 普通urgence
    var c5 = "&nbsp<img src='images/clock_green.gif' />&nbsp";// 紧急
    var c10 = "&nbsp<img src='images/clock_red.gif' />&nbsp";// 特急
    var l1 = "&nbsp<img src='images/lock_blue.gif'  />&nbsp";// 普通securityClassification
    var l2 = "&nbsp<img src='images/lock_gold.gif'/>&nbsp"; // 秘密
    var l3 = "&nbsp<img src='images/lock_green.gif' />&nbsp";// 机密
    var l5 = "&nbsp<img src='images/lock_red.gif'  />&nbsp";// 绝密
    switch (record.data.securityClassification) {
        case 1:
            switch (record.data.urgence) {
                case 0:
                	re = l1 + c0;
                    tip = s1 + u0;
                    break;
                case 5:
                	re = l1 + c5 ;
                    tip = s1 + u5;
                    break;
                case 10:
                	re = l1 + c10;
                    tip = s1 + u10;
                    break;
            }
            break;
        case 2:
            switch (record.data.urgence) {
                case 0:
                	re = l2 + c0;
                    tip = s2 + u0;
                    break;
                case 5:
                	re = l2 + c5;
                    tip = s2 + u5;
                    break;
                case 10:
                	re = l2 + c10;
                    tip = s2 + u10;
                    break;
            }
            break;
        case 3:
            switch (record.data.urgence) {
	            case 0:
	            	re = l3 + c0;
	                tip = s3 + u0;
	                break;
	            case 5:
	            	re = l3 + c5;
	                tip = s3 + u5;
	                break;
	            case 10:
	            	re = l3 + c10;
	                tip = s3 + u10;
	                break;
            }
            
            break;
        case 5:
            switch (record.data.urgence) {
	            case 0:
	            	re = l5 + c0;
	                tip = s5 + u0;
	                break;
	            case 5:
	            	re = l5 + c5;
	                tip = s5 + u5;
	                break;
	            case 10:
	            	re = l5 + c10;
	                tip = s5 + u10;
	                break;
	            }
            break;
    }
    metadata.attr = 'ext:qtitle="' + title + '"' + ' ext:qtip="' + tip + '"';
    return re;
}
// 标志END

/** *************稿件列表信息START************************** */

// 查看稿件
var win_add;
var form_manuscriptinfo;
var form;
window.showdrawView = function(needParam) {
	var tab_manuscript = new Ext.TabPanel( {
		id : 'tab_manuscript',
		plain : true,
		frame : true,
		minTabWidth : 20,
		defaults : {
		    height:360,
			autoWidth : true
		},
		enableTabScroll : true
	});
	Ext.Ajax.request( {
				url : 'receiver_manuscriptInfo_view.action',
				method : 'post',
				params : {
					manuscriptId : needParam
				},
				success : function(resp, opts) {
					var respText = Ext.util.JSON.decode(resp.responseText);
					if (respText.success) {
						
						formchange(respText);
						/** ****************稿件详情表单START***************************** */
						 form_manuscriptinfo = new Ext.Panel(
								{
									formId:"form_manuscriptinfo",
									title : '稿件详情',
									border : false,
									labelAlign : 'right',
									plain:true,
									labelWidth : 100,
									frame : true,
						            layout : 'form',
									items : [{
										fieldLabel : '稿件标题',
										xtype : 'textfield',
										readOnly : true,
										value : respText.manuscript.title,
										anchor : '93.7%',
										itemCls:'unedit'
									},{
										autoHeight : true,
										xtype : 'textfield',
										fieldLabel : '稿件编号',
										readOnly : true,
										value : respText.manuscript.manuscriptCode,
										itemCls:'form_text unedit'
									},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '来稿单位',
													readOnly : true,
													value : respText.manuscript.contributeCompany.contributeCompanyName,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '来稿单位类型',
													readOnly : true,
													value : respText.manuscript.contributeCompany.type,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '联系人',
													readOnly : true,
													value : respText.manuscript.contributeCompanyPerson.name,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '联系人手机',
													readOnly : true,
													value : respText.manuscript.contributeCompanyPerson.mobilePhone,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '联系人邮箱',
													readOnly : true,
													value : respText.manuscript.contributeCompanyPerson.email,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '稿件分类',
													readOnly : true,
													value : respText.manuscript.manuscriptCategory.manuscriptCategoryName,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '紧急程度',
													readOnly : true,
													value : urgence,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '文档类型',
													readOnly : true,
													value : texttype,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '原稿文种',
													readOnly : true,
													value : language,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '密级',
													readOnly : true,
													value : securityClassification,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '目标语言',
													readOnly : true,
													value : targetLanguage,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '字数',
													readOnly : true,
													value : respText.manuscript.wordNum,
													itemCls:'form_text unedit'

												},
												{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '来稿时间',
													readOnly : true,
													value : contributeTime,
													itemCls:'form_text unedit'
												},{
													autoHeight : true,
													xtype : 'textfield',
													fieldLabel : '计划完成时间',
													readOnly : true,
													value : plannedConsummationTime,
													itemCls:'form_text unedit'
									            },{
									            	fieldLabel : '备注',
									            	xtype: 'panel',
						                            width: 425,
						                            itemCls: 'clear',
													html: changeRemark(respText)
									            } ]
								});
						/** *******************稿件详情表单end*********************** */
							tab_manuscript.add(form_manuscriptinfo);
							tab_manuscript.setActiveTab(form_manuscriptinfo);// 表示默认显示第一个
							
							Ext.Ajax.request( {
								url : 'receiver_ManuscriptWorkInfo_list.action',
								method : 'post',
								params : {
								manuscriptId : needParam
							},
							success : function(resp, opts) {
								var respText = Ext.util.JSON.decode(resp.responseText);
								var rolename = [ '翻译', '校审', '校对', '审核' ];
								if (respText.success) {
									for ( var i = 0; i < respText.manuscriptWorks.length; i++) {
										var v = '';// 用来存放工作人的姓名
										for ( var j = 0; j < respText.manuscriptWorks[i].manuscriptWorkers.length; j++) {
											v += respText.manuscriptWorks[i].manuscriptWorkers[j].manuscriptWorkerName + ' ';
										}
										form = new Ext.Panel(
												{
													title : rolename[i] + '详情',
													border : false,
													labelAlign : 'right',
													plain : true,
													labelWidth : 100,
													frame : true,
													layout : 'form',
													items : [ {
														fieldLabel : rolename[i] + '人',
														xtype : 'textfield',
														readOnly : true,
														style : 'border:0',
														itemCls : "unedit",
														value : v
													},{
														autoHeight : true,
														xtype : 'textfield',
														fieldLabel : rolename[i]+ "完成时间",
														readOnly : true,		
														style : 'border:0',
														value : new Date(respText.manuscriptWorks[i].actualFinishedTime)
													.format('Y-m-d'),
													itemCls : 'form_text unedit'		
													}, {
														autoHeight : true,
														xtype : 'textfield',
														fieldLabel : '字数',
														readOnly : true,
														value : respText.manuscriptWorks[i].wordNum,
														itemCls : 'form_text unedit'
													}, {
														fieldLabel : rolename[i] + '意见',
														xtype : 'textarea',
														readOnly : true,
														style : 'border:0',
														value : respText.manuscriptWorks[i].remark,
														anchor : '93.7%',
														itemCls:'clear unedit'
													} ]
												});
										tab_manuscript.add(form);
									}
									;
								}
							}
							});
					} else {
						Ext.Msg.alert('查看详情失败');
					}
				},
				failure : function() {
					Ext.Msg.show( {
						title : '错误提示',
						msg : '修改失败!',
						buttons : Ext.Msg.OK,
						icon : Ext.Msg.ERROR,
						width : 200
					});
				}
			});
	
	function changeRemark(respText){
		return "<div align=\"center\"><a href='javascript:void(0)'  onclick=javascript:showRemark('" + respText.manuscript.manuscriptId + "')>备注详情</a></div>";
	}
	
	window.showRemark = function(v){
	    Ext.Ajax.request({
	        url: 'receiver_manuscriptInfo_view.action',
	        method: 'post',
	        params: {
	            manuscriptId: v
	        },
	        success: function(resp, opts){
	            var respText = Ext.util.JSON.decode(resp.responseText);
	            if (respText.success) {
	                var window_remark = new Ext.Window({
	                    title: '备注详情',
	                    closable: false,
	                    width: 600,
	                    resizable: false,
	                    height: 400,
	                    iconCls: 'manuscript',
	                    modal: true,
	                    constrain: true,
	                    closeAction: 'close',
	                    layout: 'fit',
	                    items: [{
	                        xtype: 'htmleditor',
	                        enableAlignments: false,
	                        enableColors: false,
	                        enableFont: false,
	                        enableFontSize: false,
	                        enableFormat: false,
	                        enableLinks: false,
	                        enableLists: false,
	                        enableSourceEdit: false,
	                        readOnly: true,
	                        value: respText.manuscript.remark
	                    }],
	                    buttons: [{
	                        text: '关闭',
	                        handler: function(){
	                            window_remark.close();
	                        }
	                    }]
	                
	                
	                }).show();
	            }
	        },
	        failure: function(){
	            Ext.Msg.show({
	                title: '错误提示',
	                msg: '查看失败!',
	                buttons: Ext.Msg.OK,
	                icon: Ext.Msg.ERROR,
	                width: 200
	            });
	        }
	    });
	},
	
	  win_add = new Ext.Window(
			{
				title : '未发排列表',
				width : 600,
				constrain :true,//为将window header约束在视图中显示
				resizable : false,
				autoHeight : true,
				modal : true,
				y:130,
				closable:false,
				iconCls:'manuscript',
				closeAction : 'hide',
				items : tab_manuscript,
				buttons : [
						{
							text : '发排文档',
							handler : function() {
								Ext.MessageBox.confirm(
										'确认发排',
										'是否要进行发排操作?',
										callback);
								function callback(id) {
									if (id == 'yes') {
										win_add.close();
										Ext.Ajax
												.request( {
													url : 'receiver_Manuscript_send.action',
													method : 'post',
													params : {
														manuscriptId : needParam
													},
													success : function(
															resp,
															opts) {
														var respText = Ext.util.JSON
																.decode(resp.responseText);
														if (respText.success) {
															//成功后改变左侧焦点
															vp.findByType('treepanel')[0].getNodeById('receiver-alreadysend').select();
															Ext.getCmp('content-panel').uxmodules="undefined";
															Ext.Ajax.request( {
																		url : 'js/receiver/receiver-alreadysend.js',
																		success : onLoadJs,
																		method : 'GET'
																	});

														} else {
															Ext.Msg
																	.show( {
																		title : '错误提示',
																		msg : '发排失败!',
																		buttons : Ext.Msg.OK,
																		icon : Ext.Msg.ERROR,
																		width : 200
																	});
														}
													},
													failure : function() {
														Ext.Msg
																.show( {
																	title : '错误提示',
																	msg : '发排失败!',
																	buttons : Ext.Msg.OK,
																	icon : Ext.Msg.ERROR,
																	width : 200
																});
													}
												});
									}
								}
							}
						},
						{
							id:'down',
							text : '下载稿件',
							handler:function(){
							win_add.hide();
							xx='';
							mydownload(needParam);
							}
						} ,{
							text:'关闭',
							handler:function(){
							win_add.close();
						    }
						}]
			}).show();
};
/* 查看稿件END */

/* 下载原稿START */
var xx='';
window.mydownload= function mydownload(needParam) {
	Ext.Ajax.request({
		url : 'receiver_ManuscriptWorkInfo_list.action',
		method : 'post',
		params : {
			manuscriptId : needParam
		},
		success:function(resp,opts){
			var respText = Ext.util.JSON.decode(resp.responseText);
			if(respText.success){
				var manuscriptWorkIds=[];
				for (var i=0; i<=respText.manuscriptWorks.length; i++) {
					   if(i==0){
						   manuscriptWorkIds[i]=needParam;
					   }else{
						   manuscriptWorkIds[i]=respText.manuscriptWorks[i-1].manuscriptWorkId;
					   }
				}
				showloadname(manuscriptWorkIds);
			};
		}
	
	});
};
function showloadname(manuscriptWorkIds){
	Ext.Ajax.request({
		url:'receiver_Manuscript_download.action',
		method:'post',
		params:{manuscriptWorkIds:manuscriptWorkIds},
	    success:function(resp,opts){
		var respText = Ext.util.JSON.decode(resp.responseText);
		if(respText.success){
			var name=['下载原稿','下载翻译稿','下载校审稿','下载校对稿','下载审核稿'];
			for(var i=0;i<respText.entityPath.length;i++){
				if(respText.entityPath[i]!=null){
					if(i==0){
						xx+="<a style=\"padding:8px;display:block;float:left;width:98px;padding-left:10px\" href=\"download.action?inputPath="+respText.entityPath[i]+"&&refEntityId="+manuscriptWorkIds[i]+"&&refEntityType=Manuscript\">"+name[i]+"</a>   ";
					}else{
						xx+="<a style=\"padding:8px;display:block;float:left;width:98px;padding-left:10px\" href=\"download.action?inputPath="+respText.entityPath[i]+"&&refEntityId="+manuscriptWorkIds[i]+"&&refEntityType=manuscriptwork\">"+name[i]+"</a>   ";
					}
				}
			}
				showdownfile(xx);
		}else{
			 Ext.Msg.show({
			    	title : '操作提示',
					msg :respText.errorMessage,
					buttons : Ext.Msg.OK,
					icon: Ext.Msg.ERROR,
					width : 200,
					fn:function(){win_add.show();}
			    });
			 
		}
	  },
	  failure : function() {
			Ext.Msg.show( {
				title : '错误提示',
				msg : '操作失败!',
				buttons : Ext.Msg.OK,
				icon : Ext.Msg.ERROR,
				width : 200
			});
		}
	});
}
function showdownfile(xx){
	var mywindow = new Ext.Window({
		title: '下载稿件详情',
		draggable:true,//可以拖动窗口
		constrain:true,
		width: 385,
		center:true,
		items:[{
			fieldLabel: '下载稿件',
			xtype: 'panel',
			html:xx
		}],
		buttons:[{
			text:'关闭',
			handler:function(){
			mywindow.close();
		}
		}],
		 listeners: {
            'beforeclose':showWindow
        }
	}).show();
}
function showWindow(){
	win_add.show();
}
/* 下载稿件END */



var grid = new Ext.grid.GridPanel( {
	title : '未发排列表',
	loadMask : {
		msg : '数据加载中...'
	},
	ds : ds,
	store : ds,
	region : 'center',
	autoScroll : true,
	cm : cm_user,
	autoExpandColumn : 1,
	bbar : new Ext.PagingToolbar( {
		pageSize : 20,
		store : ds,
		displayInfo : true,
		beforePageText : '第',
		afterPageText : '页-共{0}页',
		displayMsg : '显示{0} - {1} 条  共 {2} 条',
		emptyMsg : "没有记录"
	})
});
ds.load( {               
	params : {
		start : 0,
		limit : 20
	}
});
var p_user = {
	id : 'receiver-notsend',
	border : false,
	layout : 'border',
	items : [ grid ]
};
Ext.getCmp('content-panel').add(p_user);
Ext.getCmp('content-panel').layout.setActiveItem('receiver-notsend');
